#pragma once

#include <QtOpenGL>
#include <QVector>
#include <QVarLengthArray>
#include "Primitive.h"

//struct BezierSegment: Primitive
//{
//	QVector3D position;
//    QVector3D color;
//};


namespace Curves
{

class BezierCurve:CAD_CAM::Primitive
{
public:

	BezierCurve(void);
	~BezierCurve(void);

	void DrawShader(QGLShaderProgram& shaderProgram, QMatrix4x4& viewMatrix, QMatrix4x4& projectionMatrix);
	void addVertex( const QVector3D & v);
	void removeVertex( int indx);
private:
	void build();
	int bezierVertices;
	const int VerticesMax;
	QVector<CAD_CAM::MyVertex> vertexVector;
};

}